package main

import (
	"fmt"
	"os"
	"strings"
)

func main() {
	if len(os.Args) <= 1 {
		usage()
		os.Exit(-1)
	}

	s := basename(os.Args[1])
	fmt.Println(s)
}

func basename(s string) string {
	// 处理只有一个 "/" 的情况
	if len(s) == 1 && s[0] == '/' {
		return s
	}

	// 最后一个字符是 '/' 则跳过
	if len(s) > 0 && s[len(s)-1] == '/' {
		s = s[:len(s)-1]
	}

	i := strings.LastIndexByte(s, '/')
	s = s[i+1:]

	return s
}

func usage() {
	fmt.Println("go run basename02.go <path>")
}
